// // 访问权限的拦截
// // 访问权限拦截（在路由的导航守卫中判断 token）

// import router from './router'
// // 提示框
// import { Message } from 'element-ui'
// // 进度条
// import NProgress from 'nprogress'
// // 进度条样式
// import 'nprogress/nprogress.css'
// // 导入操作 token 的方法
// import { getToken } from '@/utils/auth'

// // 定义白名单 （不需要登陆也能访问的页面）
// const whiteList = ['/404', '/login']

// // 添加前置守卫
// // to: 路由要跳转的目标页面
// // from：路由从哪个页面中跳转的
// // next：是否向下执行
// router.beforeEach((to, from, next) => {
//       // 进入页面之前开启进度条
//   NProgress.start()
//     //获取token
//     const token = getToken()
//     if (token) {
//         // 如果token存在
//         // 判断是否访问的登录页面
//         if (to.router == '/login') {
//             // 是
//             Message.info('您已经登录过了')
//             //关闭进度条
//             NProgress.done()
//             next('/')
//         } else {
//             //不是
//             next()
//         }
//     } else {
//         // 不存在
//         // 判断访问的路由是否在白名单中
//         // includes 判断数组中是否存在某个属性
//         const bool = whiteList.includes(to.path)
//         if (bool) {
//             // 在
//             next()
//         } else {
//             // 不在
//             Message.info('对不起，您还没有登录')
//             next('/login')

//             //跳转之前保存当前路径
//             next(`login?_redirect${to.path}`)
//         }
//     }
// })


// // 后置钩子
// router.afterEach((to, from) => {
//     NProgress.done()
//   })


// //   问题：**
// // 如果访问一个任意页面，但是没有登录，要跳转到登录页面中，登录成功之后，应该再次回到之前的页面
// //    `/test` => `/login` => `/dashboard`

// // **解决方案：**
// // 在跳转到登录页面之前，我们可以先把之前的路径记录下来：`/login?_redirect=/test`
// //  登录成功之后，判断路由后面是否有 `_redirect` 参数
// //    如果有：直接跳转到 `_redirect` 对应的页面中
// //    如果无：直接跳转到首页
// //  登录成功之后，判断路由后面是否有 `_redirect` 参数